In recent years, there has been known a storage system in which data is distributed and stored in a plurality of storage nodes. This storage system includes e.g. a data access control apparatus which collectively receives requests for access to the plurality of storage nodes. When the data access control apparatus receives a request for storing data, the data access control apparatus determines a storage node as a storage destination where the data is to be stored according to a predetermined logic. Then, the data access control apparatus transmits the data to be stored to the determined storage node, and requests the storage node to store the transmitted data. Further, when the data access control apparatus receives a request for referring to data, the data access control apparatus transmits a reference request to a storage node storing the requested data, and transmits the data received in response to the reference request to the apparatus as a sender of the reference request.
As an example of a technique related to the system in which data is distributed and stored, there has been proposed a data retrieval apparatus configured to temporarily store data retrieved from an element database, and output, when a request for searching for the same data is received within a predetermined time after the start of storage of the data, the stored data as a retrieval result without acquiring the data from the element database.
Further, as another example of the same, there has been proposed a data access apparatus configured to add location information of data to an attribute of the data when the data has been retrieved to thereby make it possible to directly access the data without making a query about the location information of the data when referring to the data after the retrieval of the data.
Japanese Laid-Open Patent Publication No. 2004-252789
Japanese Laid-Open Patent Publication No. 2007-200342
Upon receipt of a request for storing data, the above-mentioned data access control apparatus determines a storage destination where the data is to be stored according to a predetermined logic. For example, the data access control apparatus uses e.g. a time stamp of the data or a user ID of a user who has requested to store the data, as a key, and determines a storage destination where the data is to be stored, based on the key.
When the above-mentioned key is specified as a reference condition from an apparatus as a sender of a request for referring to data, the data access control apparatus determines a storage node storing the data requested to be referred to according to the specified key. However, when a reference condition other than the above-mentioned key is specified by an apparatus as a sender of the reference request, the data access control apparatus cannot determine the storage node storing the requested data. In this case, the data access control apparatus sends a reference request for referring to data matching the specified reference condition to all of the storage nodes. In this processing, there is a problem that the data reference request is also sent to storage nodes in which the data matching the reference condition is not stored, which causes wasteful traffic between the data access control apparatus and the storage nodes.